static gboolean
gtk_css_matcher_widget_path_has_class (const GtkCssMatcher *matcher,
- const char *class_name)
+ GQuark class_name)
{
const GtkWidgetPath *siblings;
siblings = gtk_widget_path_iter_get_siblings (matcher->path.path, matcher->path.index);
if (siblings && matcher->path.sibling_index != gtk_widget_path_iter_get_sibling_index (matcher->path.path, matcher->path.index))
- return gtk_widget_path_iter_has_class (siblings, matcher->path.sibling_index, class_name);
+ return gtk_widget_path_iter_has_qclass (siblings, matcher->path.sibling_index, class_name);
else
- return gtk_widget_path_iter_has_class (matcher->path.path, matcher->path.index, class_name);
+ return gtk_widget_path_iter_has_qclass (matcher->path.path, matcher->path.index, class_name);
}
static gboolean
static gboolean
gtk_css_matcher_any_has_class (const GtkCssMatcher *matcher,
- const char *class_name)
+ GQuark class_name)
{
return TRUE;
}
static gboolean
gtk_css_matcher_superset_has_class (const GtkCssMatcher *matcher,
- const char *class_name)
+ GQuark class_name)
{
if (matcher->superset.relevant & GTK_CSS_CHANGE_CLASS)
return _gtk_css_matcher_has_class (matcher->superset.subset, class_name);
gboolean (* has_name) (const GtkCssMatcher *matcher,
const char *name);
gboolean (* has_class) (const GtkCssMatcher *matcher,
- const char *class_name);
+ GQuark class_name);
gboolean (* has_id) (const GtkCssMatcher *matcher,
const char *id);
gboolean (* has_regions) (const GtkCssMatcher *matcher);
static inline gboolean
_gtk_css_matcher_has_class (const GtkCssMatcher *matcher,
- const char *class_name)
+ GQuark class_name)
{
return matcher->klass->has_class (matcher, class_name);
}
GString *string)
{
g_string_append_c (string, '.');
- g_string_append (string, selector->data);
+ g_string_append (string, g_quark_to_string (GPOINTER_TO_UINT (selector->data)));
}
static gboolean
gtk_css_selector_class_match (const GtkCssSelector *selector,
const GtkCssMatcher *matcher)
{
- if (!_gtk_css_matcher_has_class (matcher, selector->data))
+ if (!_gtk_css_matcher_has_class (matcher, GPOINTER_TO_UINT (selector->data)))
return FALSE;
return gtk_css_selector_match (gtk_css_selector_previous (selector), matcher);
selector = gtk_css_selector_new (>K_CSS_SELECTOR_CLASS,
selector,
- g_intern_string (name));
+ GUINT_TO_POINTER (g_quark_from_string (name)));
g_free (name);